package me.jessyan.armscomponent.app.di.component;

import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.FragmentScope;

import dagger.BindsInstance;
import dagger.Component;
import me.jessyan.armscomponent.app.di.module.AssetsHomeModule;
import me.jessyan.armscomponent.app.mvp.contract.AssetsHomeContract;
import me.jessyan.armscomponent.app.mvp.ui.fragment.AssetsHomeFragment;


/**
 * <p>
 * Author: Taozebi
 * Date: 08/08/2021 15:30
 * Description: describe of this class
 */
@FragmentScope
@Component(modules = AssetsHomeModule.class, dependencies = AppComponent.class)
public interface AssetsHomeComponent {
    void inject(AssetsHomeFragment fragment);

    @Component.Builder
    interface Builder {
        @BindsInstance
        AssetsHomeComponent.Builder view(AssetsHomeContract.View view);

        AssetsHomeComponent.Builder appComponent(AppComponent appComponent);

        AssetsHomeComponent build();
    }
}